This will go down as one of the strangest NBA seasons in history, and that feeling is amplified if you play Fantasy Basketball. But, at this point, most fantasy seasons are coming to a close. We've made it through the postponements, the extended absences and the bizarre lineups.

We've also had some great, positive surprises this season, like the emergence of Julius Randle and the Knicks. And even though some teams are underperforming, like the Raptors, their struggles have resulted in positive developments for players -- Chris Boucher, for example. Below is a list of the biggest surprise players from this season. If you were lucky enough to have one on your team, there's a good chance you had a successful year.

Julius Randle, Knicks

Randle has been a solid fantasy player for a while. He ranked in the top-55 in total production from 2017-18 through 2019-20. But last season wasn't even his best on a per-game basis. It seemed like he had capped out his potential as a player -- someone who makes for a solid third option.

Things changed this season. With a new coach in Tom Thibodeau at the helm, Randle was deemed the Knicks' star. He's setting a career-high in usage rate (28.8%), and he leads the NBA in minutes per game (37.5). That's led to him being the league's fifth-most productive fantasy player.

The two most significant changes to his game are his three-point shooting and his passing. After previously being a 29.5 percent three-point shooter, Randle is shooting 41.8 percent from deep on 5.3 attempts per game. He's also handing out 6.0 assists per game -- a significant step up from his previous career high of 3.6 dimes.

Terry Rozier, Hornets

Rozier debuted with Charlotte last season and played well. He posted career highs nearly across the board and ranked 39th in fantasy in total production. However, with the Hornets drafting LaMelo Ball and signing Gordon Hayward, Rozier's role appeared to be slipping. Devonte' Graham was also still in the fold. His draft stock declined significantly, and he was often drafted outside the top-100.

Unexpectedly, Rozier is playing even better than he did last season. He's on pace for career highs in points (20.6), field-goal percentage (46.5), threes (3.3) and steals (1.2). Ball hasn't cut into Rozier's play. If anything, Ball has helped elevate it. Rozier ranks 22nd in total production.

Chris Boucher, Raptors

Only die-hard NBA fans and fantasy managers knew about Boucher last season. He played just 13.2 minutes per game, as he was playing behind Marc Gasol and Serge Ibaka. He showed some impressive potential in opportunities where he saw extended minutes, but it wasn't clear if that would translate if he saw that kind of run consistently. The Raptors also signed Aron Baynes during the offseason, and it seemed like Baynes would be the go-to starter after he had a surprise season himself last year.

It became quickly apparent that Baynes was not going to live up to what he showed last season. That's opened up time for Boucher, who has seen 24.0 minutes per game. He's posting averages of 13.6 points, 6.7 rebounds, 1.9 blocks, 1.5 threes and 1.1 assists while shooting 51.9 percent from the field and 78.7 percent from the free-throw line. In short, his production translated in the extra minutes. Boucher ranks 39th in total production, and he's the 20th best fantasy asset on a per-36-minute basis. Fantasy managers certainly wish he played more, but considering the draft day discount, it's worked out well for anyone who selected him.

Kyle Anderson, Grizzlies

Anderson had a disappointing 2019-20 season. He saw 29.8 minutes per game in 2018-19, his debut Memphis season, but dropped nearly 10 minutes per game the following season. The forward wasn't rosterable in even 16-team formats. He struggled to find playing time with Jae Crowder, Dillon Brooks, Jaren Jackson and Brandon Clarke all in the fold.

This season, with Jackson unexpectedly missing nearly the whole year recovering from a torn meniscus, Anderson has been able to thrive. He's in the midst of a career year and is averaging 12.2 points, 6.0 rebounds, 3.5 assists and 1.2 steals in 27.2 minutes. Part of his newfound success has been an improvement from beyond the arc. He shot just 28.6 percent from deep on 1.1 attempts per game during his first two seasons in Memphis. This season, he's up to 34.7 percent shooting on 3.8 shots per game. The overall result has been Anderson ranking 77th on a per-game basis in fantasy.

LaMelo Ball, Hornets

Ball was one of the most hyped-up rookies in recent memory. Some of that was due to simply being in the Ball family, but he earned plenty of respect from his play overseas as well. While there are bound to be people who said they "saw this coming," Ball's performances as a rookie have been beyond general expectations.

It quickly became apparent that he possesses elite passing ability and that his basketball IQ is extremely high. He also cut down on the foul shot selection from his time in Australia, and his wonky shooting form hasn't been an issue, as he's shooting 37.5 percent from three on 5.3 attempts per game. In his 21 starts, he's averaged 19.5 points on 15.1 shots, 6.2 assists, 5.8 rebounds and 1.7 steals in 32.1 minutes. On a per-game basis, he's the NBA's 42nd-best fantasy player.

Jerami Grant, Pistons

A successful role player for the Nuggets last season, Grant decided to take a different direction in the offseason, resulting in him becoming the No. 1 option on the Pistons. It was a bizarre move. Grant hardly showed anything during his time in Denver -- or anywhere else, for that matter -- suggesting he could be a playmaker and get his own shot. He was essentially a three-and-D power forward who could moonlight as a center or small forward when needed.

It hasn't resulted in wins for Detroit (19-43), but Grant got his wish, and he's exceeded expectations. He's set career highs essentially across the board, as he's averaging 22.5 points, 4.6 rebounds, 2.8 assists and 1.1 blocks in 34.1 minutes. He has nine games with at least 30 points and one 40-point game. He's handed out at least five assists eight times. Fantasy managers that believed in Grant were rewarded. After ranking 175th on a per-game basis last season, he's jumped to 67th.

Honorable Mentions

Michael Porter, Nuggets: Averaging 18.5 points per game on 54/44/78 shooting.

Zion Williamson, Pelicans: Averaging 29/7/4 on 63.0 percent shooting over his past 33 games.

Christian Wood, Rockets: Averaging an efficient 21.0 points and 9.5 rebounds.